#include <iostream>
#include <cstring>
using namespace std;
#define PI 3.1415

class Circle {
	private:
		double R;
		char *str;
	public:
		Circle(double R,char *str);
		Circle(Circle &A);
		~Circle();
		double area();
		double girth();
};

Circle::~Circle(){
	delete []str;
	cout << "Call Destructor" << endl;
}

Circle::Circle(Circle &A){
	cout << "Copy Constructor" << endl;
	this->R = A.R;
	this->str = new char[strlen(A.str) + 1];
	strcpy(this->str,A.str);
}

Circle::Circle(double R,char *str){
	cout << "Constructor" << endl;
	this->R = R;
	this->str = new char[strlen(str) + 1];
	strcpy(this->str,str);
}

double Circle::area(){
	return PI*R*R;
}

double Circle::girth(){
	return 2*PI*R;
}

int main(){
	Circle A(5,(char *)"NO.1 Old class");
	Circle B(A);
	return 0;
}
